package com.example.exam.service;

import com.example.exam.pojo.DTO.ExamPaperAnswerDTO.AnswerCorrectDTO;
import com.example.exam.pojo.DTO.ExamPaperAnswerDTO.ExamPaperSubmitDTO;
import com.example.exam.pojo.DTO.ExamPaperAnswerDTO.ExamPaperSubmitItemDTO;
import com.example.exam.pojo.DTO.ExamPaperAnswerDTO.PaperAnswerDTO;
import com.example.exam.pojo.entity.TExamPaperAnswer;
import com.example.exam.pojo.vo.ExamPaperAnswerVO.AnswerItemCorrectVO;
import com.example.exam.pojo.vo.ExamPaperVO.ExamPaperEditStandardVO;
import com.example.exam.tools.JsonPage;
import io.swagger.models.auth.In;

import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.List;


public interface IExamPaperAnswerService  {

    /**
     * 未批改列表 status!=1
     * @param paperAnswerDTO
     * @return
     */
    JsonPage<TExamPaperAnswer>  getExamPaperAnswerByPage(PaperAnswerDTO paperAnswerDTO);

    /**
     * 已批改列表 status=1
     * @param paperAnswerDTO
     * @return
     */
    JsonPage<TExamPaperAnswer>  getFinishedPaperAnswerByPage(PaperAnswerDTO paperAnswerDTO);

    TExamPaperAnswer selectById(Integer id);

    /**
     * 把试卷的答题信息转成DTO传给前端
     * @param id
     * @return
     */
    ExamPaperSubmitDTO getPaperAnswerById(Integer id);

    /**
     * 批改试卷
     * @param answerItemCorrectVOs
     * @return
     */
    Integer judge(List<AnswerItemCorrectVO> answerItemCorrectVOs);

    /**
     * 导出已批改试卷列表
     * @param response
     * @throws IOException
     */
    void export(HttpServletResponse response,PaperAnswerDTO paperAnswerDTO) throws IOException;





}
